#!/bin/bash  
  
# 定义变量  
SERVICE_NAME="your_service_name"  # 服务的名称  
TOMCAT_HOME="/opt/tomcat"  # Tomcat的安装目录  
UPDATE_DIR="/opt/update"  # WAR文件的目录  
BACKUP_DIR="/opt/backup"  # 备份目录  
CONFIG_FILES="config1.conf config2.conf"  # 需要替换的配置文件  
  
# 停止服务  
systemctl stop $SERVICE_NAME  
  
# 解压缩WAR文件  
unzip $UPDATE_DIR/*.war -d $TOMCAT_HOME/webapps/  
  
# 备份旧程序和配置文件  
TIMESTAMP=$(date +%Y%m%d%H%M%S)  
cp -r $TOMCAT_HOME/* $BACKUP_DIR/backup_$TIMESTAMP  
for file in $CONFIG_FILES; do  
    if [ -f $file ]; then  
        cp $file $BACKUP_DIR/backup_$TIMESTAMP/$file  
    fi  
done  
  
# 替换配置文件（如果存在）  
for file in $CONFIG_FILES; do  
    if [ -f $file ]; then  
        cp $BACKUP_DIR/backup_$TIMESTAMP/$file $file  
    fi  
done  
  
# 重启服务  
systemctl start $SERVICE_NAME